The invention relates to connection-oriented packet-based telecommunication networks, such as ATM (Asynchronous Transfer Mode), and particularly to route optimization in such networks.
At present, there are two very interesting development trends in telecommunication: mobile communications and broadband networks in which bit rates typically exceed 2 Mbit/s. An example of broadband networks is Broadband Integrated Services Digital Networks.(B-ISDN), the transfer mode of which is selected to be Asynchronous Transfer Mode (ATM). The ATM is a switching and multiplexing solution, particularly relating to a data link layer (i.e. OSI Layer 2, from here on called the ATM layer). ATM enables an implementation of a connection-oriented packet network in the B-ISDN networks,
In ATM data transmission-the end user""s data traffic is carried from a source to a destination by virtual connections. Data is transferred over switches of the network in standard-size packets of 53 bytes, the packets being called ATM cells. The structure of an ATM cell is illustrated in FIG. 1. An ATM cell contains a header of 5 octets and an information field of 48 octets containing actual payload. The main object of the header is to identify a connection number for a cell sequence forming a virtual channel to a particular call. A physical layer (i.e. OSI Layer 1 ) may comprise several virtual paths which are multiplexed in the ATM layer. The virtual paths are identified by a VPI (Virtual Path Identifier). Each virtual path may comprise a number of virtual channels that are identified by a VCI (Virtual Channel Identifier). The header contains also other fields, such as an HEC (Header Error Control), a GFC (Generic Flow Control), a CLP (Cell Loss Priority) and a PT (Payload Type). The ATM cell contains indirectly the information on the receiver""s address, each cell thus being an independent data transfer unit. The number of cells transferred in a time unit is proportional to the user""s bandwidth requirements.
The ATM is a connection-oriented traffic technique, but because there is no connection before it is established, a connection establishment request shall be routed from a source through the ATM network to a destination approximately in the same way as packets are routed in packet switched network works. After the connection has been established the cells travel along the same virtual path during the connection.
A third development trend is to introduce wireless data transmission (wireless ATM) and mobility into the ATM networks (wireless ATM). The present B-ISDN and ATM standards do not support as such the additional features required by wireless communication, but different solutions to implement for example mobility management in connection with wireless ATM have already been presented. The aim has been to add wireless data transmission and mobility to the ATM network without significant changes in the existing ATM standards and networks. Such solutions have been presented in the applicant""s copending Finnish patent applications 971178 and 970602, for example.
In PLMNs (Public Land Mobile Network) radio interfaces have conventionally been narrowband interfaces. The transmission systems of mobile networks have conventionally been implemented by circuit-switched connections in a star or tree network configuration. In order to increase the capacity and flexibility of the transmission systems, the use of different broadband packet-switched transmission systems or ATM technique in mobile networks has also been proposed, for example in WO 9400959, EP 0366342 and EP 0426269. A possible future development trend is mobile systems having a broadband radio interface. Then a broadband transmission system of the mobile system is also needed, while a potential alternative is ATM technique.
In mobile networks and in a wireless ATM network a terminal does not have any fixed access point to the network, but the terminal and the access point may move in the network. When a virtual connection has been routed to the terminal through the ATM network, the routing must also be changed or extended from an old access point (a base station, for example) to a new one. This procedure is called handover or handoff. In a hard handover, the data transmission is interrupted when the connection is connected from one access point to another. In a soft handover the continuation of the data transmission is secured by the terminal having a connection both with the old and the new AP (Access Point) simultaneously during handover.
Handover and particularly several consecutive handovers can lead to non-optimal routing of a virtual connection. Non-optimal routing refers to a situation in which the virtual connection is not routed directly from one point to another, but the connection travels a longer winding path which is determined according to handover. In the worst case, the virtual connection path has a loop, which starts from and ends at the same network node. Unnecessary loops on the connection path cause delay and use network resources, which is why they should be avoided.
The following simple example illustrates how a routing loop could be produced in a wireless ATM network. Two base stations BTS1 and BTS2 have been connected to an ATM switch 20. BTS1 and BTS2 are also equipped with ATM switching functions. Let us first assume that a mobile station MS has a radio connection with the base station BTS1 and a virtual ATM connection between the base station BTS1 and port 2 of the ATM switch 20. Inside the ATM switch port 2 is connected to port 1 from which a virtual connection has been established (through the ATM network) to a second party. Next, a so-called path extension (PE) handover is performed from the base station. BTS1 to base station BTS2. Let us assume in the example case that there is no direct ATM link between the base stations. Then BTS1 first routes the connection back to port 3 of the ATM switch 20 from where it is routed through port 4 to the base station BTS2. The result is a non-optimal routing, when the connection path has a loop from the switch 20 to the base station BTS1 and back. An optimal routing would require bypassing the loop by connecting the connection directly from port 1 to port 4. Similar loops can be produced in any part of the ATM network.
In order to be able to remove the above described loops, they should first be detected. In the ATM networks a global identifier, which is transferred in the ATM cells, is used for the connection and the loops can be detected by this identifier. If the network node detects that the same global identifier appears at two output ports, it may conclude that the matter referred to is a loop that should be removed. However, in cases where a global identifier is not available, it is difficult to detect that a loop exists. Furthermore, when the loop has been detected, the optimal connection path should be switched in such a manner that transferable cells do not disappear or that their order does not change.
An object of the invention is thus to develop a method and an equipment implementing the method so that said problems will be solved.
The objects of the invention are achieved with a method for optimizing a connection path in a packet-based telecommunication network in which an access point of a terminal to the network and thereby the routing of a connection path can change during connection. The method is characterized by
adding a special packet to an end-to-end packet flow in a network node along the connection path, said network node being able to locally identify said special packet,
detecting the looping of the connection path back to said network node if said special packet later returns to said network node,
optimizing the connection path by switching the connection path to bypass a loop inside said network node.
The invention further relates to an arrangement to optimize a connection path in a packet-based telecommunication network in which an access point of a terminal to the network can change during connection. The arrangement is characterized by at least one network node along the connection path comprising
means for adding to an end-to-end packet flow travelling on a connection path a special packet comprising an identifier by which said network node identifies the connection locally,
means for monitoring whether said special packet will later return back to said network node and for thereby detecting the looping of the connection path back to said network node,
means for switching the connection inside said network node to a more optimal path bypassing said detected loop.
The invention is based on using a special packet for detecting non-optimal routing or a loop, which special packet any network node on the path can add to the packet flow. The network node provides this special packet with a unique code which the network node uses locally for identifying the special packet and for linking the special packet to a particular established connection. In other words, according to the invention only the network node adding a special packet to the packet flow must be able to identify the unique code and special packet. If there is a loop on the path, the special packet added to the packet flow returns back to the same network node. When the network node detects that a special packet provided with a particular code returns back, it may conclude that on the connection path, to which the unique code is linked, there is a loop that should be removed. Then the network node can internally switch to an optimal route bypassing the detected loop. Furthermore, the network node preferably releases the loop in a way characteristic of the network.
According to a preferred embodiment of the invention also the elimination of a detected loop is based on the use of the special packet. When the network node has detected the loop, the network node sends a second special packet provided with a unique identifier to the same connection having the loop. At the same time the network node starts to buffer possible incoming packets which are meant to be sent to the connection containing the loop. The packets arriving from the loop are normally transmitted forward. When the second special packet reappears from the loop to the network node that sent it, then the loop is xe2x80x9cflushedxe2x80x9d i.e. all packets sent to the loop before the second special packet and the start of the buffering have returned back and been transmitted forward. Now the network node can bypass the loop by internally switching the connection to an optimal route. When the loop has been bypassed, the network node sends to the optimized path the buffered packets which have arrived after the transmission of the second packet. Using the flushing and buffering based on the special packet of the invention the order of the packets can be preserved during the elimination of the loop and the optimization of the path.
An advantage with the invention is that the loop is removed using the network node""s local and internal function which can be implemented without significant changes in the existing switches. In packet-based networks the intermediate nodes along the connection can insert special packets to the packet flow, for example, operation and maintenance cells in the ATM network. The special packet according to the invention is only locally significant, i.e. only the network node adding the special packet to the packet flow has to be able to identify the special packet and to interpret the contents of the special packet. Thus the invention enables the operation without a global connection identifier. Detection and elimination of the loop may be started locally always when the network node is able to suspect that a loop exists, for example, after the network procedures which may cause the formation of a loop in the network in addition or alternatively the network node may start to detect or eliminate the loop regularly or randomly. This is possible since the loop as such is not a failure situation barring appropriate data transmission, but is non-optimally utilizing the network resources. For this reason the optimization of the path can be performed normally without particular haste, although it is preferable to detect and eliminate the loop as early as possible.